package com.css.fxfzypg.modules.preAssessResult.service;

import com.css.fxfzypg.base.response.RestResponse;
import com.css.fxfzypg.modules.SettingSeismic.vo.SettingSeismicDetailsVO;
import com.css.fxfzypg.modules.baseData.entity.BuildingVulnerability;
import com.css.fxfzypg.modules.baseData.entity.PbeEntity;
import com.css.fxfzypg.modules.baseData.queryParams.BuildingVulnerabilityQueryParams;
import com.css.fxfzypg.modules.preAssessResult.entity.SeiCapDistribution;
import com.css.fxfzypg.modules.preAssessResult.entity.Vulnerability;
import com.css.fxfzypg.modules.preAssessResult.vo.*;
import com.css.fxfzypg.modules.surveytaskmanage.vo.TaskVo;

import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;

public interface PreAssessResultService {
    Map<String, Object> taskPage(TaskVo taskVo, int curPage, int pageSize);

    Map<String, Object> undistributedTaskPage(TaskVo taskVo, int curPage, int pageSize);

    PreAssessTaskInfoVo getPreAssessTaskInfo(String taskId);

    Boolean isHaveSetEarthquake(String taskId);

    List<SettingSeismicDetailsVO> setEarthquakeCensus(String taskId);

    List<SettingSeismicDetailsVO> setEarthquakeCensus(List<String> taskId);

    void setEarthquakeDelete(String faultNum,String taskId);

    Map<String, Object> getDetailPage(SettingSeismicDetailsVO settingSeismicDetailsVO, int curPage, int pageSize);

    Map<String, Object> getDetailsPage(SettingSeismicDetailsVO settingSeismicDetailsVO, int curPage, int pageSize);


    void detailDelete(String ids);

    void assignment(String taskId);

    RestResponse seiCapCalculation(String taskId, String type);

    List<SeiCapDistribution> getSeiCapCalculation(String taskId,String dzIntensity,String type);
    SeiCapDistribution findByTaskIdLimit(String taskId,String type);

    StructuralProportionVo getStructuralProportion(String province, String city, String county, String town, String townorcontry);

    int deleteSeiCapdistribution(String taskId);

    int updateEarthquakeCensus(String taskId);

    RestResponse seiCapCalculationToAb(DistrictVO districtVOS);

    void exportSeiCapCalculation(String taskId,String type, HttpServletResponse resp) throws Exception;
}
